package com.fowo.api.model.tmp.jm.goods.order;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/**
 * 独立站订单临时表 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Getter
@Setter
public class TmpJmGoodsOrderImportPo {

  /** 驳回理由 */
  @ExcelProperty("驳回理由")
  @Size(max = 255, message = "驳回理由长度不能超过255")
  private String reasonForRejection;

  /** 物流公司 */
  @ExcelProperty("物流公司")
  @Size(max = 50, message = "物流公司长度不能超过50")
  private String logisticsCompany;

  /** 物流单号 */
  @ExcelProperty("物流单号")
  @Size(max = 50, message = "物流单号长度不能超过50")
  private String logisticsNo;

  /** 用户留言 */
  @ExcelProperty("用户留言")
  @Size(max = 50, message = "用户留言长度不能超过50")
  private String message;

  /** 订单id */
  @ExcelProperty("订单id")
  @Size(max = 50, message = "订单id长度不能超过50")
  private String orderId;

  /** 下单时间 */
  @ExcelProperty("下单时间")
  @DateTimeString(message = "下单时间不是有效的时间日期格式")
  private String orderTime;

  /** 实收款 */
  @ExcelProperty("实收款")
  @DecimalString(message = "实收款小数格式不正确", label = "实收款")
  private String payment;

  /** 支付方式 */
  @ExcelProperty("支付方式")
  @Size(max = 50, message = "支付方式长度不能超过50")
  private String paymentMethod;

  /** 付款时间 */
  @ExcelProperty("付款时间")
  @DateTimeString(message = "付款时间不是有效的时间日期格式")
  private String paymentTime;

  /** 联系方式 */
  @ExcelProperty("联系方式")
  @Size(max = 50, message = "联系方式长度不能超过50")
  private String phone;

  /** 优惠信息 */
  @ExcelProperty("优惠信息")
  @Size(max = 50, message = "优惠信息长度不能超过50")
  private String preferential;

  /** 单价 */
  @ExcelProperty("单价")
  @DecimalString(message = "单价小数格式不正确", label = "单价")
  private String price;

  /** 审核驳回原因 */
  @ExcelProperty("审核驳回原因")
  @Size(max = 255, message = "审核驳回原因长度不能超过255")
  private String processRejectReason;

  /** 保护计划id */
  @ExcelProperty("保护计划id")
  @LongString(message = "保护计划id数值格式不正确", label = "保护计划id")
  private String protectionId;

  /** 数量 */
  @ExcelProperty("数量")
  @LongString(message = "数量数值格式不正确", label = "数量")
  private String quantity;

  /** 取消理由 */
  @ExcelProperty("取消理由")
  @Size(max = 255, message = "取消理由长度不能超过255")
  private String reasonForCancellation;

  /** 收货时间 */
  @ExcelProperty("收货时间")
  @DateTimeString(message = "收货时间不是有效的时间日期格式")
  private String receivingTime;

  /** 退款备注 */
  @ExcelProperty("退款备注")
  @Size(max = 50, message = "退款备注长度不能超过50")
  private String refundRemarks;

  /** 备注 */
  @ExcelProperty("备注")
  @Size(max = 50, message = "备注长度不能超过50")
  private String remarks;

  /** 回寄物流信息 */
  @ExcelProperty("回寄物流信息")
  @Size(max = 50, message = "回寄物流信息长度不能超过50")
  private String returnLogisticsNo;

  /** 方案id */
  @ExcelProperty("方案id")
  @LongString(message = "方案id数值格式不正确", label = "方案id")
  private String schemeId;

  /** 地址 */
  @ExcelProperty("地址")
  @Size(max = 250, message = "地址长度不能超过250")
  private String shippingAddress;

  /** 城市 */
  @ExcelProperty("城市")
  @Size(max = 250, message = "城市长度不能超过250")
  private String shippingCity;

  /** 国家 */
  @ExcelProperty("国家")
  @Size(max = 250, message = "国家长度不能超过250")
  private String shippingCountry;

  /** 州 */
  @ExcelProperty("州")
  @Size(max = 250, message = "州长度不能超过250")
  private String shippingState;

  /** 街道 */
  @ExcelProperty("街道")
  @Size(max = 250, message = "街道长度不能超过250")
  private String shippingStreet;

  /** 邮编 */
  @ExcelProperty("邮编")
  @Size(max = 50, message = "邮编长度不能超过50")
  private String shippingZipCode;

  /** 规格id */
  @ExcelProperty("规格id")
  @LongString(message = "规格id数值格式不正确", label = "规格id")
  private String specificationsId;

  /** 状态 */
  @ExcelProperty("状态")
  @Size(max = 20, message = "状态长度不能超过20")
  private String status;

  /** 提交时间 */
  @ExcelProperty("提交时间")
  @DateTimeString(message = "提交时间不是有效的时间日期格式")
  private String submissionTime;

  /** 总价 */
  @ExcelProperty("总价")
  @DecimalString(message = "总价小数格式不正确", label = "总价")
  private String total;

  /** 促销码 */
  @ExcelProperty("促销码")
  @Size(max = 50, message = "促销码长度不能超过50")
  private String activityId;

  /** 收货地址 */
  @ExcelProperty("收货地址")
  @Size(max = 200, message = "收货地址长度不能超过200")
  private String address;

  /** 售后状态 用于取消售后订单状态还原 */
  @ExcelProperty("售后状态 用于取消售后订单状态还原")
  @Size(max = 20, message = "售后状态 用于取消售后订单状态还原长度不能超过20")
  private String afterStatus;

  /** 申请售后状态 */
  @ExcelProperty("申请售后状态")
  @Size(max = 20, message = "申请售后状态长度不能超过20")
  private String applyStatus;

  /** 是否为后台创建订单 */
  @ExcelProperty("是否为后台创建订单")
  @BooleanString(message = "是否为后台创建订单格式不正确，请使用“是”，“否”")
  private String backendCreate;

  /** 账单地址 */
  @ExcelProperty("账单地址")
  @Size(max = 255, message = "账单地址长度不能超过255")
  private String billAddress;

  /** 用户取消备注 */
  @ExcelProperty("用户取消备注")
  @Size(max = 255, message = "用户取消备注长度不能超过255")
  private String cancelRemarks;

  /** 调价金额 */
  @ExcelProperty("调价金额")
  @DecimalString(message = "调价金额小数格式不正确", label = "调价金额")
  private String change;

  /** 礼品卡编码 */
  @ExcelProperty("礼品卡编码")
  @Size(max = 100, message = "礼品卡编码长度不能超过100")
  private String code;

  /** 完成时间 */
  @ExcelProperty("完成时间")
  @DateTimeString(message = "完成时间不是有效的时间日期格式")
  private String completionTime;

  /** 收货人 */
  @ExcelProperty("收货人")
  @Size(max = 50, message = "收货人长度不能超过50")
  private String consignee;

  /** 用户id */
  @ExcelProperty("用户id")
  @LongString(message = "用户id数值格式不正确", label = "用户id")
  private String consumerId;

  /** 币种 */
  @ExcelProperty("币种")
  @LongString(message = "币种数值格式不正确", label = "币种")
  private String currencyExchangeRateId;

  /** 副戒id */
  @ExcelProperty("副戒id")
  @LongString(message = "副戒id数值格式不正确", label = "副戒id")
  private String accessoryRingId;

  /** 发货时间 */
  @ExcelProperty("发货时间")
  @DateTimeString(message = "发货时间不是有效的时间日期格式")
  private String deliveryTime;

  /** 优惠价格 */
  @ExcelProperty("优惠价格")
  @DecimalString(message = "优惠价格小数格式不正确", label = "优惠价格")
  private String discountMoney;

  /** 积分 */
  @ExcelProperty("积分")
  @LongString(message = "积分数值格式不正确", label = "积分")
  private String earnPoints;

  /** 邮箱 */
  @ExcelProperty("邮箱")
  @Size(max = 50, message = "邮箱长度不能超过50")
  private String email;

  /** 运费 */
  @ExcelProperty("运费")
  @DecimalString(message = "运费小数格式不正确", label = "运费")
  private String freightPrice;

  /** 礼品卡使用金额 */
  @ExcelProperty("礼品卡使用金额")
  @DecimalString(
    message = "礼品卡使用金额小数格式不正确",
    label = "礼品卡使用金额"
  )
  private String giftCardMoney;

  /** 礼品包装id */
  @ExcelProperty("礼品包装id")
  @LongString(message = "礼品包装id数值格式不正确", label = "礼品包装id")
  private String giftId;

  /** SKU */
  @ExcelProperty("SKU")
  @Size(max = 500, message = "SKU长度不能超过500")
  private String goodsCode;

  /** 商品id */
  @ExcelProperty("商品id")
  @LongString(message = "商品id数值格式不正确", label = "商品id")
  private String goodsId;

  /** 商品名(导入数据) */
  @ExcelProperty("商品名(导入数据)")
  @Size(max = 255, message = "商品名(导入数据)长度不能超过255")
  private String goodsName;

  /** 商品sku(导入数据) */
  @ExcelProperty("商品sku(导入数据)")
  @Size(max = 255, message = "商品sku(导入数据)长度不能超过255")
  private String goodsSku;

  /** 免费 */
  @ExcelProperty("免费")
  @Size(max = 50, message = "免费长度不能超过50")
  private String infoText;

  /** 店铺id */
  @ExcelProperty("店铺id")
  @LongString(message = "店铺id数值格式不正确", label = "店铺id", min = 0L)
  private String sid;
}
